package com.invengo.module_robot.data.repsitory.source;

import com.invengo.base.http.RobotBaseBean;
import com.invengo.library_db.entity.module_check.BookBean;
import com.invengo.library_db.entity.module_robot.ActivitBean;
import com.invengo.library_db.entity.module_robot.RobotTokenBean;
import com.invengo.module_robot.data.entity.ConfigBean;
import com.invengo.module_robot.data.entity.DouBanBeans;
import com.invengo.module_robot.data.entity.PopularBean;
import com.invengo.module_robot.data.entity.SearchBean;

import java.util.HashMap;
import java.util.List;

import io.reactivex.Observable;
import java8.util.stream.Stream;
import me.goldze.mvvmhabit.http.BaseBean;
import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.http.Body;
import retrofit2.http.Header;
import retrofit2.http.Query;
import retrofit2.http.QueryMap;

public interface RobotSource {
    Observable<RobotBaseBean<SearchBean>> searchBooks(String keyWord);
    Observable<RobotBaseBean<SearchBean>> getBookInfoByIsbn( String isbn);


    Observable<RobotBaseBean<RobotTokenBean>> login(String UserNameOrEmailAddress, String Password);

    Observable<RobotBaseBean<ActivitBean>> getActivities();

    Observable<ResponseBody> getActivityImage(String attachmentId);

    Observable<RobotBaseBean<List<PopularBean>>> getPopularBook();

    Observable<RobotBaseBean<List<DouBanBeans>>> getImages(List<String> isbn);
     void saveConfig(ConfigBean bean);
}
